home *** CD-ROM | disk | FTP | other *** search
- // Persistence Of Vision Raytracer version 2.0 sample file.
-
- // Scene file by Dan Farmer November, 1991
- //
- // note: To properly process on a pc, the resultant .gif file should
- // be modified with piclab: brighten 20 contrast 45, gamma 0.6, transform
- //
- // Many of the declarations here are not the same as in the #include files!
- //=========================================================================
- #include "colors.inc"
- #include "shapes.inc"
- #include "textures.inc"
-
- #declare BlueViolet = color red 0.38 green 0.39 blue 0.58 // tce designed color
- #declare DarkPurple = color red 0.53 green 0.12 blue 0.47
- #declare CoolCopper = color red 0.85 green 0.53 blue 0.10
- #declare LightWood = color red 0.91 green 0.76 blue 0.65
- #declare MediumWood = color red 0.65 green 0.50 blue 0.39
- #declare DarkWood = color red 0.52 green 0.37 blue 0.26
- #declare SemiSweetChoc = color red 0.42 green 0.26 blue 0.15
- #declare BakersChoc = color red 0.36 green 0.20 blue 0.09
- #declare VeryDarkBrown = color red 0.35 green 0.00 blue 0.14
-
- // a unit sphere is one with radius of 1.0.
- // This shape is equivilent in size to a unit sphere {
- // and will scale evenly in all directions.
-
- #declare Torus = torus { 1.0, 0.25 }
-
- #declare LeftTopElbow = object {
- Torus
- rotate 90*x
-
- clipped_by {
- plane { x, 0 }
- plane { -y, 0 }
- }
- texture { Copper_Texture pigment { quick_color Red } }
- }
-
- #declare RightTopElbow = object {
- Torus
- rotate 90*x
-
- clipped_by {
- plane { -x, 0 }
- plane { -y, 0 }
- }
- texture { Copper_Texture pigment { quick_color Red } }
- }
-
- #declare XTube = cylinder {
- -x, x, 1
- texture { Copper_Texture pigment { quick_color Red } }
- }
-
- #declare YTube = cylinder {
- -y, y, 1
- texture { Copper_Texture pigment { quick_color Red } }
- }
-
- camera {
- location <20, 15, -35>
- direction <0, 0, 1.2>
- up <0, 1, 0>
- right <4/3, 0, 0>
- look_at <1.5, 5, 0>
- }
-
- #declare Light = color red 0.75 green 0.75 blue 0.75
-
- light_source { <-30, 500, -1.0> colour Light }
-
- light_source { <-5, 30, -50> colour Light }
-
- /* floor */
- plane {
- y, -6
-
- pigment {
- granite
- color_map { [0.0 1.01 color BlueViolet color DarkPurple] }
- quick_color White
- }
- finish {
- reflection 0.15
- ambient 0.075 diffuse 0.5
- }
- }
-
- #declare Oak = pigment {
- wood
- turbulence 0.05
- colour_map {
- [0.00 0.10 color SemiSweetChoc color SemiSweetChoc]
- [0.10 0.90 color SemiSweetChoc color DarkWood]
- [0.90 1.01 color DarkWood color DarkWood ]
- }
- }
-
- #declare WoodSphere = sphere {
- <0, 0, 0>, 10
-
- texture {
- pigment {
- Oak
- scale <0.5, 0.5, 1.0>
- translate <0.25, 0.05, 0.5>
- rotate <0, 0, 0.5>
- quick_color White
- }
- finish {
- Shiny
- reflection 0.12
- ambient 0.075
- diffuse 0.7
- }
- }
-
- texture {
- finish {
- Shiny
- ambient 0.075 diffuse 0.7
- }
- pigment { Clear }
- }
- }
-
- #declare Chamfer = union {
- object { Disk_X scale <12.5, 0.65, 0.65> translate <0, 0, -12> }
- object { Disk_X scale <12.5, 0.65, 0.65> translate <0, 0, 12> }
- object { Disk_Z scale <0.65, 0.65, 12.5> translate <-12, 0, 0> }
- object { Disk_Z scale <0.65, 0.65, 12.5> translate <12, 0, 0> }
- }
-
- #declare BrassBall = sphere {
- <0, 0, 0>, 1.5
- texture { Brass_Texture pigment { quick_color Red } }
- }
-
- #declare Railing = union {
- object { LeftTopElbow translate <-8, 0, 0> }
- object { RightTopElbow translate <+8, 0, 0> }
- object { XTube scale <8.0, 0.25, 0.25> translate <0, 1, 0> }
- object { YTube scale <0.25, 2, 0.25> translate <+9, -2, 0> }
- object { YTube scale <0.25, 2, 0.25> translate <-9, -2, 0> }
- }
-
- #declare Base = difference {
- object { Cube scale <12, 2, 12> }
- object { Chamfer translate <0, 2, 0> }
-
- texture {
- pigment {
- Oak
- scale <0.45, 0.45, 0.7>
- rotate <0.20, 0.10, 0.05>
- translate <0, -1, 0>
- quick_color Red
- }
- finish {
- Shiny
- reflection 0.15
- ambient 0.075 diffuse 0.7
- }
- }
-
- texture {
- finish {
- Shiny
- ambient 0.075 diffuse 0.7
- }
- pigment { Clear }
- }
- translate <0, -1, 0>
- }
-
- union {
- object { WoodSphere translate <0, 9.5, 0> }
- object { Base }
- object { BrassBall translate < 10, -4.5, 10> }
- object { BrassBall translate < 10, -4.5, -10> }
- object { BrassBall translate <-10, -4.5, 10> }
- object { BrassBall translate <-10, -4.5, -10> }
- object { Railing translate <0, 3, 10> }
- object { Railing translate <0, 3, -10> }
- object { Railing rotate 90*y translate < 10, 3, 0> }
- object { Railing rotate 90*y translate <-10, 3, 0> }
- }
-